package com.asman.vr.dto

import androidx.annotation.Keep
import androidx.lifecycle.LiveData
import androidx.paging.PagedList
import com.asman.vr.network.NetworkState

/**
 * Data class that is necessary for a UI to initType a listing and interact w/ the rest of the system
 * 列表接口返回数据包装类
 */
@Keep
data class ResourceListing<T>(
        val pagedList: LiveData<PagedList<T>>,
        val networkState: LiveData<NetworkState>,
        val refreshState: LiveData<NetworkState>,
        val refresh: () -> Unit,
        val retry: () -> Unit
)